home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Source Code / Libraries / C Internet Config / IC Application Source ƒ / Documentation ƒ / Readme < prev   
Encoding:
Text File  |  1995-12-04  |  2.9 KB  |  61 lines  |  [TEXT/SPM ]

  1. /*
  2.     For those of you about to dive into the code, I salute you ;-)
  3.     
  4.     The IC pascal application was relatively easy to port to C; Peter & Quinn's
  5.     code is simple and straight forward.  And since C and Pascal are similar,
  6.     the port went very quickly.
  7.     
  8.     Understanding how the app works is another story, but a brilliant one.
  9.     
  10.     The IC app has a modular design; the windows, IC prefs, etc., are controlled
  11.     using resources; this make the app relatively easy to extend to handle
  12.     new dialogs for IC prefs.
  13.     
  14.     Each IC window has an associated WHAT resource which describes what
  15.     each of the user items are (the windows are actually dialogs; each element
  16.     that a user can interact with is a user item or a control).  The WHAT
  17.     resource consists of a bunch of elements, each element contains an IC pref
  18.     key, an OSType which describes what the item is, and some flags.
  19.     
  20.     Based on the type of each item, the IC app has a number of WHAT handlers;
  21.     some for text, buttons, lists, etc.  Each WHAT handler could almost be
  22.     a standalone component in itself; they receive open, close, flush, and other
  23.     events which allow them to handle user interaction with the interface
  24.     element.
  25.     
  26.     I have included a file, Adding New Items, which describes the process for
  27.     adding interface elements to the IC application.  The benefits of having an
  28.     application which allows for anyone to add interface items to the IC app
  29.     are the same benefits to having a centralized prefs area; the sharing of
  30.     an editing interface will force IC-aware apps to use the same pref setup.
  31.     
  32.     Take the following example.  I want to add SOCKS configuration to the IC
  33.     prefs.  No problem; through my own applications I can design a pref which
  34.     conforms to my needs.  I can use it in all of my apps that use SOCKS.  Now
  35.     programmer #2 needs to add SOCKS configuration for their program, but
  36.     my interface is not flexible enough for the items #2 needs to interface
  37.     with.  So #2 creates his own interface.  What results is a centralized
  38.     prefs database with separate prefs for each programmer or application.
  39.     That's just what IC was supposed to prevent!
  40.     
  41.     By adding a SOCKS configuration to the IC app (where most people will be
  42.     changing their prefs), both myself and #2 would tend to use the same
  43.     prefs since the interface already exists.  Maybe #2 would need to add an
  44.     item or two, but the benefits are still better than before.
  45.     
  46.     I sent a message to Peter Lewis to ask him what he thought about this;
  47.     I am still waiting for a response.
  48.     
  49.     However, for the next Apprentice CD I hope to develop a totally modular
  50.     IC application that will allow for programmers to create plug-ins for handling
  51.     the WHAT types and perhaps an interface builder for creating new IC
  52.     windows.
  53.     
  54.     The down side to this is that Peter & Quinn might feel that they have lost
  55.     ownership of the project and stop work on the IC project; if you guys are
  56.     reading this I hope that you won't.
  57.     
  58.     Dave Nebinger
  59.     dnebing@epix.net
  60. */
  61.